package cn.tedu.weibo.pojo.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

/**
 * 注册功能的DTO类
 */
@Data
public class UserRegDTO {
    /*
    1.ApiModelProperty注解：添加在DTO类属性上,用于设置Knife4j中的参数信息;
      1.1 value参数：指定参数描述;
      1.2 required参数：指定是否为必填,默认为false;
      1.3 example参数：示例值;
    */
    /*
        message参数：自定义异常提示消息,
        全局异常处理器中通过:ex.getFieldError().getDefaultMessage()获取消息;
        1.@NotNull注解：不允许为null
     */

    //@NotNull(message = "不能为null")
   // @NotEmpty(message = "用户名不能为空,同时不能为null")
    @NotBlank(message = "不能为空白,不能为空,不能为null")
    @ApiModelProperty(value="用户名",required = true)
    private String username;
    @Size(min=6,max=12,message = "请输入6到12位之间")
    @ApiModelProperty(value = "密码",required = true)
    private String password;
    @Pattern(regexp = "^[\\u4e00-\\u9fa5]{1,7}|[a-zA-Z0-9_]{1,14}$", message = "昵称不能超过7个汉字或14个字符")
    @ApiModelProperty(value = "昵称",required = true)
    private String nickname;

}
